package com.baobao.dao;

import com.baobao.domain.Course;

import java.util.Set;

import org.skyway.spring.util.dao.JpaDao;

import org.springframework.dao.DataAccessException;

/**
 * DAO to manage Course entities.
 * 
 */
public interface CourseDAO extends JpaDao<Course> {

	/**
	 * JPQL Query - findCourseByEndTimeContaining
	 *
	 */
	public Set<Course> findCourseByEndTimeContaining(String endTime) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByEndTimeContaining
	 *
	 */
	public Set<Course> findCourseByEndTimeContaining(String endTime, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findAllCourses
	 *
	 */
	public Set<Course> findAllCourses() throws DataAccessException;

	/**
	 * JPQL Query - findAllCourses
	 *
	 */
	public Set<Course> findAllCourses(int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByBanjiIdContaining
	 *
	 */
	public Set<Course> findCourseByBanjiIdContaining(String banjiId) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByBanjiIdContaining
	 *
	 */
	public Set<Course> findCourseByBanjiIdContaining(String banjiId, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByWeekDay
	 *
	 */
	public Set<Course> findCourseByWeekDay(Integer weekDay) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByWeekDay
	 *
	 */
	public Set<Course> findCourseByWeekDay(Integer weekDay, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByNameContaining
	 *
	 */
	public Set<Course> findCourseByNameContaining(String name) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByNameContaining
	 *
	 */
	public Set<Course> findCourseByNameContaining(String name, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByPrimaryKey
	 *
	 */
	public Course findCourseByPrimaryKey(String banjiId_1, Integer weekDay_1, Integer seqNo) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByPrimaryKey
	 *
	 */
	public Course findCourseByPrimaryKey(String banjiId_1, Integer weekDay_1, Integer seqNo, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByEndTime
	 *
	 */
	public Set<Course> findCourseByEndTime(String endTime_1) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByEndTime
	 *
	 */
	public Set<Course> findCourseByEndTime(String endTime_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByStartTime
	 *
	 */
	public Set<Course> findCourseByStartTime(String startTime) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByStartTime
	 *
	 */
	public Set<Course> findCourseByStartTime(String startTime, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByBanjiId
	 *
	 */
	public Set<Course> findCourseByBanjiId(String banjiId_2) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByBanjiId
	 *
	 */
	public Set<Course> findCourseByBanjiId(String banjiId_2, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCourseBySeqNo
	 *
	 */
	public Set<Course> findCourseBySeqNo(Integer seqNo_1) throws DataAccessException;

	/**
	 * JPQL Query - findCourseBySeqNo
	 *
	 */
	public Set<Course> findCourseBySeqNo(Integer seqNo_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByStartTimeContaining
	 *
	 */
	public Set<Course> findCourseByStartTimeContaining(String startTime_1) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByStartTimeContaining
	 *
	 */
	public Set<Course> findCourseByStartTimeContaining(String startTime_1, int startResult, int maxRows) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByName
	 *
	 */
	public Set<Course> findCourseByName(String name_1) throws DataAccessException;

	/**
	 * JPQL Query - findCourseByName
	 *
	 */
	public Set<Course> findCourseByName(String name_1, int startResult, int maxRows) throws DataAccessException;

}